import serial
import time
Rspserial = serial.Serial('/dev/ttyAMA0',115200)

def receive_data():
    # 使用超时模式，稳健
    with serial.Serial('/dev/ttyAMA0', 115200, timeout=1) as ser:
        print(f"串口 {ser.name} 已打开。等待接收数据...")

        # 适用于以换行符('\n')结束的文本数据
        print("\n尝试读取一行数据 (以'\\n'结尾)...")
        line = ser.readline() # 读取直到遇到'\n'，或者超时
        if line:
            # readline()返回的字节串会包含行尾的'\n'
            # 使用.decode().strip()可以将其转换为干净的字符串
            cleaned_line = line.decode('ascii', errors='ignore').strip()
            print(f"成功接收到一行: {line}")
            print(f"清理后的字符串: '{cleaned_line}'")
        else:
            print("在1秒内未接收到一行数据。")


if __name__ == '__main__' :
    receive_data_demo()
